package com.hspedu.math_;

/**
 * @author DL5O
 * @version 1.0
 */
public class MathMethod {
    public static void main(String[] args) {
        //1.abs绝对值
        int abs = Math.abs(-9);
        System.out.println(abs);

        //2.pow求幂
        double pow = Math.pow(2, 4);

        //3.ceil 向上取整,返回>=该参数的最小整数(转成 double)
        double ceil = Math.ceil(3.9);//4.0
        double ceil1 = Math.ceil(-3.9);//-3.0

        //4.floor 向下取整，返回<=该参数的最大整数(转成 double)
        double floor = Math.floor(-4.1);//-5.0
        double floor1 = Math.floor(6.1);//6
        System.out.println(floor);

        //5.round 四舍五入 Math.floor(该参数+0.5)
        long round = Math.round(5.51);//6
        System.out.println(round);

        //6.sqrt 求开方
        double sqrt = Math.sqrt(9.0);//3.0
        System.out.println(sqrt);

        //7.random 求随机数
        // random 返回的是 0 <= x < 1 之间的数
        //  请写出获取 a-b 之间的一个随机整数,a,b 均为整数 ，比如
        //  返回一个 2 <=x <=7
        System.out.println("=======");
        int random;
        for (int i = 0; i < 10; i++) {
            //我的思路：
            /*random = (int) (Math.random() * 10);
            random = random % 6 + 2;
            System.out.println(random);*/


            //老师的思路：
            //  0<= Math.random()* (b-a+1) < b-a+1
            //  取整之后， a <= (int)(a + Math.random()* (b-a+1))  <= b
            random = (int)(2+Math.random()*(7-2+1));
            System.out.println(random);

            //max,min 返回最大值和最小值
            int max = Math.max(10, 20);
            int min = Math.min(10, 20);
            System.out.println("max="+max + ",min=" + min);
        }
    }
}
